#include "EItemInPluginParent.h"
#include "DefineCommon.h"
#include "EVariant.h"
#include <Autogen/EItemInPluginParent_autogen.h>

EItemInPluginParent::EItemInPluginParent()
{
    // this->setDescription("A demo parent class in PluginDefault for Reflection testing.");

    ELOG_DEBUG("EItemInPluginParent is constructed,m_data=%d", (intptr_t)(this->m_data));

    EItemInPluginParent_construct_autogen(this);
}

EItemInPluginParent::~EItemInPluginParent()
{
    ELOG_DEBUG("EItemInPluginParent is deleted");
}

void EItemInPluginParent::ui_testParent(double v1, double v2)
{
    ELOG_DEBUG("v1+v2=%f", v1+v2);

}

void EItemInPluginParent::OnSet_ui_testIntParent(int value)
{
    // ELOG_DEBUG("set testIntParent=%d", value);
}

void EItemInPluginParent::OnGet_ui_testIntParent(int& value)
{
    // ELOG_DEBUG("get testIntParent=%d", this->ui_testIntParent);
}

void EItemInPluginParent::OnSet_ui_testDoubleParent(double value)
{
	// ELOG_DEBUG("set testDoubleParent=%f", value);
}

void EItemInPluginParent::OnGet_ui_testDoubleParent(double& value)
{
	// ELOG_DEBUG("get testDoubleParent=%f", this->ui_testDoubleParent);
}

void EItemInPluginParent::OnSet_ui_testBoolParent(bool value)
{
	// ELOG_DEBUG("set testBoolParent=%d", value);
}

void EItemInPluginParent::OnGet_ui_testBoolParent(bool& value)
{
	// ELOG_DEBUG("get testBoolParent=%d", this->ui_testBoolParent);
}

void EItemInPluginParent::OnSet_ui_testVec3Parent(const EVec3& value)
{
	// ELOG_DEBUG("set testVec3Parent x=%f y=%f z=%f", value.x, value.y, value.z);
}

void EItemInPluginParent::OnGet_ui_testVec3Parent(EVec3& value)
{
	// ELOG_DEBUG("get testVec3Parent x=%f y=%f z=%f", this->ui_testVec3Parent.x, this->ui_testVec3Parent.y, this->ui_testVec3Parent.z);
}

void EItemInPluginParent::OnSet_ui_testVec4Parent(const EVec4& value)
{
	// ELOG_DEBUG("set testVec4Parent x=%f y=%f z=%f w=%f", value.x, value.y, value.z, value.w);
}

void EItemInPluginParent::OnGet_ui_testVec4Parent(EVec4& value)
{
	// ELOG_DEBUG("get testVec4Parent x=%f y=%f z=%f w=%f", this->ui_testVec4Parent.x, this->ui_testVec4Parent.y, this->ui_testVec4Parent.z, this->ui_testVec4Parent.w);
}

void EItemInPluginParent::OnSet_ui_testMatrixParent(const EMatrix4x4& value)
{
	// ELOG_DEBUG("set testMatrixParent value X=%f Y=%f Z=%f RX=%f RY=%f RZ=%f RW=%f", value.data[3][0], value.data[3][1], value.data[3][2], value.data[2][0], value.data[2][1], value.data[2][2], value.data[2][3]);
}
void EItemInPluginParent::OnGet_ui_testMatrixParent(EMatrix4x4& value)
{
	// ELOG_DEBUG("get testMatrixParent value X=%f Y=%f Z=%f RX=%f RY=%f RZ=%f RW=%f", this->ui_testMatrixParent.data[3][0], this->ui_testMatrixParent.data[3][1], this->ui_testMatrixParent.data[3][2], this->ui_testMatrixParent.data[2][0], this->ui_testMatrixParent.data[2][1], this->ui_testMatrixParent.data[2][2], this->ui_testMatrixParent.data[2][3]);
}

void EItemInPluginParent::OnSet_ui_testStringParent(const EString& value)
{
	// ELOG_DEBUG("set testStringParent=%s", value.data());
}

void EItemInPluginParent::OnGet_ui_testStringParent(EString& value)
{
	// ELOG_DEBUG("get testStringParent=%s", this->ui_testStringParent.data());
}
